Algebraic Algorithms for Matching

نویسندگان

  • Ioana Ivan
  • Madars Virza
  • Henry Yuen
چکیده

Given a set of nodes and edges between them, what’s the maximum of number of disjoint edges? This problem is known as the graph matching problem, and its study has had an enormous impact on the develpoment of algorithms, combinatorics, optimization theory, and even complexity theory. Mathematicians have been interested in the matching problem since the 19th century, leading to celebrated theorems in graph theory due to Tutte, Menger, König, and Egerváry in the mid-twentieth century[18] However, the algorithmic aspects of the matching problem were not examined until the 60’s, and the first efficient algorithm for the (unweighted) matching problem was described in Jack Edmond’s seminal 1965 paper “Paths, Flowers and Trees” [4]1. Since Edmond’s paper, there has been a long and extensive literature on the algorithms for computing matchings. There are many different types of matching problems: bipartite versus non-bipartite, perfect matching versus maximum matching, weighted versus unweighted, and so on. Many of the algorithms developed to solve graph matching have been combinatorial, meaning the operation and analysis involve graphs and combinatorial structures. Examples include Edmond’s algorithm [4], Micali and Vazirani’s [10] algorithm, and the Ford-Fulkerson maximum flow algorithm applied to bipartite matching. However, many modern algorithms for matching are algebraic, involving techniques that superficially have little to do with graphs and matchings: computing determinants, updating matrix inverses, creating random matrices. The use of algebra has led to elegant and fast matching algorithms and in certain settings, the fastest known. The development of algebraic matching algorithms has in turn spurred advances in linear algebraic techniques that have wide applicability to algorithms design for other combinatorial and graph-theoretic problems. In this survey, we explore an old combinatorial problem, but through a recent algebraic lens. Nearly all the algebraic methods for solving matching have taken advantage of an important connection between determinants and matching discovered by Tutte in 1947 [18]: an undirected simple graph G = (V,E) has a perfect matching if and only if its associated Tutte matrix is nonsingular. This characterization of the existence of perfect matchings immediately leads to a simple randomized algorithm for testing whether a graph has a perfect matching, and serves as the foundation for algorithms to find such a matching (if it exists), to find a maximum matching, and more. The Tutte matrix will also serve as a starting point for our survey. The second key piece of technology used for the results covered here is the equivalence between computing the determinant, multiplying two matrices, inverting a matrix, and performing Gaussian Elimination. It is an extremely interesting and nontrivial fact that these problems all take O(n) time, where ω is called the matrix multiplication constant, and is somewhere between 2 and 2.373 [20]2. The paper will proceed as follows: (1) Using the Tutte matrix to detect and construct a perfect matching. (2) Computing maximum matchings via Gaussian Elimination inO(n) time. (3) Computing perfect matchings via “lazy updates” of the inverse Tutte matrix in O(n) time. (4) Solving the dynamic matching problem via a dynamic matrix inverse updating algorithm. (5) Counting perfect matchings in a graph via the determinant. (6) Open problems.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Algebraic Matching of Vulnerabilities in a Low-Level Code

This paper explores the algebraic matching approach for detection of vulnerabilities in binary codes. The algebraic programming system is used for implementing this method. It is anticipated that models of vulnerabilities and programs to be verified are presented as behavior algebra and action language specifications. The methods of algebraic matching are based on rewriting rules and techniques...

متن کامل

Survey of appropriate matching algorithms for large scale systems of differential algebraic equations

This paper presents a survey on matching algorithms which are required to translate Modelica Models. Several implementations of matching algorithms are benchmarked on a set of physical models from mechanical systems in ODE and DAE representation. The major part of algorithms is based on the Augmenting Paths Method and one algorithm is based on the Push-Relabel Method. The algorithms are impleme...

متن کامل

A matrix-algebraic formulation of distributed-memory maximal cardinality matching algorithms in bipartite graphs

We describe parallel algorithms for computing maximal cardinality matching in a bipartite graph on distributedmemory systems. Unlike traditional algorithms that match one vertex at a time, our algorithms process many unmatched vertices simultaneously using a matrix-algebraic formulation of maximal matching. This generic matrix-algebraic framework is used to develop three efficient maximal match...

متن کامل

Performance Evaluation of Local Detectors in the Presence of Noise for Multi-Sensor Remote Sensing Image Matching

Automatic, efficient, accurate, and stable image matching is one of the most critical issues in remote sensing, photogrammetry, and machine vision. In recent decades, various algorithms have been proposed based on the feature-based framework, which concentrates on detecting and describing local features. Understanding the characteristics of different matching algorithms in various applications ...

متن کامل

Algebraic Algorithms for Matching and Matroid Problems

We present new algebraic approaches for several well-known combinatorial problems, including non-bipartite matching, matroid intersection, and some of their generalizations. Our work yields new randomized algorithms that are the most efficient known. For non-bipartite matching, we obtain a simple, purely algebraic algorithm with running time O(n) where n is the number of vertices and ω is the m...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011